diff --git a/templates/article.html b/templates/article.html
index 3123210..103931e 100644
--- a/templates/article.html
+++ b/templates/article.html
@@ -13,34 +13,18 @@
 
 {% block content %}
 <article>
+  {% if DISPLAY_META_ABOVE_ARTICLE %}
+    {% include "modules/article_meta.html" %}
+  {% endif %}
   <div class="article_title">
     <h1><a href="{{ SITEURL }}/{{ article.url }}" class="nohover">{{ article.title }}</a></h1>
   </div>
   <div class="article_text">
     {{ article.content }}
   </div>
-  <div class="article_meta">
-    <p>Posted <time data-timeago datetime="{{ article.date.isoformat() }}">{{ article.locale_date }}</time>
-    {% if article.author %}
-     by {% if AUTHORS_URL %} <a href="{{ SITEURL }}/{{ article.author.url }}">{{ article.author }}</a>{% else %}{{ article.author}}{% endif %}
-    {% endif %}
-    </p>
-    {% if article.modified %}
-    <p>Last updated <time data-timeago datetime="{{ article.modified.isoformat() }}">{{ article.locale_modified }}</time></p>
-    {% endif %}
-    <p>
-    {% if CATEGORY_URL %}
-    Category: <a href="{{ SITEURL }}/{{ article.category.url }}">{{ article.category }}</a>
-    {% if TAG_URL and article.tags %}&ndash;&ndash;{% endif %}
-    {% endif %}
-    {% if TAG_URL and article.tags %}
-    Tags:
-      {% for tag in article.tags %}
-      <a href="{{ SITEURL }}/{{ tag.url }}">{{ tag }}</a>{% if not loop.last %},{% endif %}
-      {% endfor %}
-    </p>
-    {% endif %}
-  </div>
+  {% if not DISPLAY_META_ABOVE_ARTICLE %}
+    {% include "modules/article_meta.html" %}
+  {% endif %}
 
   {% if DISQUS_SITENAME %}
   <div id="article_comments">
